1
พื้นฐานการเขียนคำสั่งสำหรับโมเดลภาษาขนาดใหญ่สำหรับนักพัฒนา
AI010Lesson 1
00:00

การเปลี่ยนผ่านไปสู่โมเดลที่ปรับแต่งตามคำสั่ง

รากฐานคืออะไร?

ในอดีต โมเดลฐาน (Base LLMs) ถูกฝึกให้คาดการณ์คำถัดไปในลำดับจากข้อมูลจำนวนมาก อย่างไรก็ตาม สำหรับนักพัฒนา ความแข็งแกร่งจริงอยู่ที่โมเดลที่ปรับแต่งตามคำสั่ง (Instruction Tuned LLMs) โมเดลเหล่านี้ได้รับการปรับปรุงโดยใช้การเรียนรู้เสริมจากการให้ข้อเสนอแนะจากมนุษย์ (RLHF) เพื่อปฏิบัติตามคำสั่งเฉพาะเจาะจงและทำหน้าที่เป็นผู้ช่วยที่มีประโยชน์

กฎทองคำ: จัดการกับโมเดลภาษาแบบนี้เหมือนกับพนักงานใหม่ที่ฉลาดแต่ตีความตรงๆ โมเดลไม่มีบริบทเฉพาะของคุณ ดังนั้นคุณต้องชี้แจงเป้าหมายของคุณอย่างชัดเจน

วิธีประยุกต์หลักการสำคัญ

  1. ความชัดเจนและความเฉพาะเจาะจง: ความชัดเจนไม่ได้หมายถึงการกระชับ ควรให้บริบทเพิ่มเติม และใช้เครื่องหมายแยก (delimiters) (เช่น สามเส้นบัคกิ้งหรือแท็ก XML) ช่วยให้โมเดลแยกแยะคำสั่งของคุณออกจากข้อมูลที่ต้องประมวลผลได้
  2. ให้โมเดลเวลาในการคิด: งานที่ซับซ้อนต้องใช้ห่วงโซ่การคิด หากคุณขอให้โมเดลข้ามขั้นตอนมาถึงข้อสรุปทันที มันมีแนวโน้มที่จะเกิดข้อผิดพลาดในการอนุมาน จงแนะนำให้มันคิดหาทางออกของตนเองก่อน
หลีกเลี่ยงการสร้างภาพลวงตา
โมเดลอาจสร้างข้อมูลที่ฟังดูสมเหตุสมผลแต่เป็นเท็จ จงตรวจสอบข้อเท็จจริงเสมอ หรือระบุให้โมเดลอ้างอิงแหล่งที่มาเพื่อลดความเสี่ยงนี้
main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>
Question 1
Why should a developer prefer an Instruction Tuned LLM over a Base LLM for building an application?
Base LLMs are better at following complex instructions.
Instruction Tuned LLMs are trained to follow tasks and are less likely to simply "complete" the text.
Base LLMs never hallucinate.
Challenge: Generating Structured Data
Apply prompting principles to format output.
You have a list of ingredients. You need to convert this list into a JSON format for a web app.
Task
Write a prompt that requests JSON output with keys for 'item' and 'quantity'. Include a condition check: If the input is not a recipe, output "No recipe detected."
Solution:
prompt = "You will be provided with text. If it contains a recipe, convert it to JSON with keys 'item' and 'quantity'. If not, write 'No recipe detected.' Text: <user_input>"